<p>Integer literals starting with a zero are octal rather than decimal values. While using octal values is fully supported, most developers do not have experience with them. They may not recognize octal values as such, mistaking them instead for decimal values.</p>
<h2>Noncompliant Code Example</h2>

<pre>
int myNumber = 010;   // Noncompliant. myNumber will hold 8, not 10 - was this really expected?
</pre>
<h2>Compliant Solution</h2>

<pre>
int myNumber = 8;
</pre>

<h2>See</h2>
<ul>
<li> MISRA C:2004, 7.1 - Octal constants (other than zero) and octal escape sequences shall not be used.
</li><li> MISRA C++:2008, 2-13-2 - Octal constants (other than zero) and octal escape sequences (other than "\0") shall not be used
</li><li> MISRA C:2012, 7.1 - Octal constants shall not be used
</li><li> <a href="https://www.securecoding.cert.org/confluence/x/_QC7AQ">CERT DCL18-C</a> - Do not begin integer constants with 0 when specifying a decimal value
</li></ul>
